The present invention relates to a system and method for providing a connection between a client and database management systems; and, more particularly, to a system and method for providing a connection between a client and heterogeneous database management systems so that the client simultaneously accesses the heterogeneous database management systems.
Recently, many Java developers have desired to develop a Java application for a specific database management system by using a Java language. Further, Javasoft, Inc. defined a general database access framework having Java database connectivity (JDBC). In order to interface a client with a database management system by using the JDBC, a JDBC driver is needed in the Java application. The JDBC driver includes a JDBC-open database connectivity (ODBC) bridge driver, a native-application programming interface (API) partly-Java driver, a net-protocol all-Java driver and a native-API all-Java driver.
The JDBC-ODBC bridge driver provides the JDBC by using an ODBC API. The JDBC-ODBC bridge driver is connected to the client. The client needs the client API binary code of the database management system.
The native-application programming interface (API) partly-Java driver converts a JDBC broker call into a client API of the database management system. Accordingly, the client needs the client API binary code of the database management system.
The native-API all-Java driver converts the JDBC broker call into an independent network protocol capable of interworking with the database management system. However, there is a problem that the native-API all-Java driver is supplied by only specific database management system vendor.
The net-protocol all-Java driver employs a standardized network protocol regardless of a specific database management system. Since the net-protocol all-Java driver employs the standardized network protocol capable of interworking with the database management system, a task of the client may be reduced.
Further, in order to provide a connection accessible to heterogeneous database management systems, a multi-tier net-protocol all-Java driver based on the net-protocol all-Java driver has been suggested. However, there is a problem that the suggested multi-tier net-protocol all-Java driver needs many process resources.
It is, therefore, an object of the present invention to provide a system and method for providing a connection between a client and heterogeneous database management systems by using a JDBC broker so that the client simultaneously accesses the heterogeneous database management systems.
It is, therefore, another object of the present invention to provide a system and method for providing a connection between a client and heterogeneous database management systems by using a JDBC broker that is capable of saving process resources.
It is further another object of the present invention to provide a computer-readable medium for providing a connection between a client and heterogeneous database management systems by using a JDBC broker so that the client simultaneously accesses the heterogeneous database management systems.
In accordance with an aspect of the present invention, there is provided a system for providing a connection between a client and heterogeneous database management systems, comprising: a communication management means for communicating with the client, wherein said communication management means receives a request message from the client; a thread generation means for generating a thread in response to the request message; a request processing means responsive to the request message and the generated thread for generating a client entry in a client information management table and transmitting identification information of a database and a client together with the request message; and a driver management means responsive to the request message and the identification information of the database and the client for operating a database driver corresponding to the identification information of the database by referring to the client information management table; transmitting the request message to the database driver; registering the database driver and the identification information of the database and the client in the client information management table; and transmitting an execution result corresponding to the request message from the database driver to said communication management means, wherein the database driver calls a request processing function in response to the request message and transmits a query statement to a database management system and transmits the execution result corresponding to the request message to said driver management means.
In accordance with another aspect of the present invention, there is provided a method for providing a connection between a client and heterogeneous database management systems, comprising the steps of: a) generating a thread in response to a request message transmitted from the client; b) determining what is the request message and operating a database driver to process the request message by referring to a client information management table; and c) registering identification information of a client and a database in the client information management table and transmitting an execution result corresponding to the request message from the database driver to the client.
In accordance with further another aspect of the present invention, there is provided a computer-readable medium for providing a connection between a client and heterogeneous database management systems, comprising the steps of: a) generating a thread in response to a request message transmitted from the client; b) determining what is the request message and operating a database driver to process the request message by referring to a client information management table; and c) registering identification information of a client and a database in the client information management table and transmitting an execution result corresponding to the request message from the database driver to the client.